home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / Xm / XmToggleButtonGadget.z / XmToggleButtonGadget
Encoding:
Text File  |  2002-10-03  |  64.0 KB  |  859 lines

  1.  
  2.  
  3.  
  4.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.           XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt - The ToggleButtonGadget widget class
  10.  
  11.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.           #include <Xm/ToggleBG.h>
  13.  
  14.      VVVVEEEERRRRSSSSIIIIOOOONNNN
  15.           This page documents Motif 2.1.
  16.  
  17.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  18.           ToggleButtonGadget sets nontransitory state data within an
  19.           application. Usually this gadget consists of an indicator
  20.           (square, diamond, or round) with either text or a pixmap on
  21.           one side of it.  However, it can also consist of just text
  22.           or a pixmap without the indicator.
  23.  
  24.           The toggle graphics display a 1111----ooooffff----mmmmaaaannnnyyyy, NNNN----ooooffff----mmmmaaaannnnyyyy, or NNNN----
  25.           ooooffff----mmmmaaaannnnyyyy----rrrroooouuuunnnndddd selection state.  When a toggle indicator is
  26.           displayed, a square indicator shows an NNNN----ooooffff----mmmmaaaannnnyyyyselection
  27.           state, a diamond-shaped indicator shows a 1111----ooooffff----mmmmaaaannnnyyyy
  28.           selection state, and a circle-shaped indicator shows a 1111----
  29.           ooooffff----mmmmaaaannnnyyyy----rrrroooouuuunnnndddd selection state.
  30.  
  31.           ToggleButtonGadget implies a set or unset state.  In the
  32.           case of a label and an indicator, an empty indicator
  33.           (square, diamond, or round) indicates that
  34.           ToggleButtonGadget is unset, and a filled indicator shows
  35.           that it is set. The indicator may be filled with a check
  36.           mark or the select color. In the case of a pixmap toggle,
  37.           different pixmaps are used to display the set/unset states.
  38.           ToggleButtonGadget can also indicate an indeterminate state.
  39.           In the case of a label and an indicator, an indeterminate
  40.           state is indicated by a stippled flat box.  In the case of a
  41.           pixmap toggle, a different pixmap is used to display the
  42.           indeterminate state.
  43.  
  44.           The default behavior associated with a ToggleButtonGadget in
  45.           a menu depends on the type of menu system in which it
  46.           resides.  By default, <<<<BBBBttttnnnn1111>>>> controls the behavior of the
  47.           ToggleButtonGadget.  In addition, <<<<BBBBttttnnnn3333>>>> controls the
  48.           behavior of the ToggleButtonGadget if it resides in a
  49.           PopupMenu system.  The actual mouse button used is
  50.           determined by its RowColumn parent.
  51.  
  52.           Label's resource XXXXmmmmNNNNmmmmaaaarrrrggggiiiinnnnLLLLeeeefffftttt may be increased to
  53.           accommodate the toggle indicator when it is created.
  54.  
  55.           ToggleButtonGadget uses the _X_m_Q_T_m_e_n_u_S_y_s_t_e_m and
  56.           _X_m_Q_T_s_p_e_c_i_f_y_R_e_n_d_e_r_T_a_b_l_e traits.
  57.  
  58.         CCCCllllaaaasssssssseeeessss
  59.           ToggleButtonGadget inherits behavior, resources, and traits
  60.  
  61.  
  62.  
  63.      Page 1                                          (printed 10/3/02)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  71.  
  72.  
  73.  
  74.           from OOOObbbbjjjjeeeecccctttt, RRRReeeeccccttttOOOObbbbjjjj, XXXXmmmmGGGGaaaaddddggggeeeettttand XXXXmmmmLLLLaaaabbbbeeeellllGGGGaaaaddddggggeeeetttt.
  75.  
  76.           The class pointer is _x_m_T_o_g_g_l_e_B_u_t_t_o_n_G_a_d_g_e_t_C_l_a_s_s.
  77.  
  78.           The class name is XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt.
  79.  
  80.         NNNNeeeewwww RRRReeeessssoooouuuurrrrcccceeeessss
  81.           The following table defines a set of widget resources used
  82.           by the programmer to specify data. The programmer can also
  83.           set the resource values for the inherited classes to set
  84.           attributes for this widget. To reference a resource by name
  85.           or by class in a ....XXXXddddeeeeffffaaaauuuullllttttssss file, remove the XXXXmmmmNNNN or XXXXmmmmCCCC
  86.           prefix and use the remaining letters. To specify one of the
  87.           defined values for a resource in a ....XXXXddddeeeeffffaaaauuuullllttttssss file, remove
  88.           the XXXXmmmm prefix and use the remaining letters (in either
  89.           lowercase or uppercase, but include any underscores between
  90.           words).  The codes in the access column indicate if the
  91.           given resource can be set at creation time (C), set by using
  92.           XXXXttttSSSSeeeettttVVVVaaaalllluuuueeeessss (S), retrieved by using XXXXttttGGGGeeeettttVVVVaaaalllluuuueeeessss (G), or is
  93.           not applicable (N/A).
  94.  
  95.                                              XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt RRRReeeessssoooouuuurrrrcccceeee SSSSeeeetttt
  96.           NNNNaaaammmmeeee                         CCCCllllaaaassssssss                        TTTTyyyyppppeeee             DDDDeeeeffffaaaauuuulllltttt                AAAAcccccccceeeessssssss
  97.           XmNarmCallback               XmCArmCallback               XtCallbackList   NULL                   C
  98.           XmNdetailShadowThickness     XmCDetailShadowThickness     Dimension        2                      CSG
  99.           XmNdisarmCallback            XmCDisarmCallback            XtCallbackList   NULL                   C
  100.           XmNfillOnSelect              XmCFillOnSelect              Boolean          dynamic                CSG
  101.           XmNindeterminatePixmap       XmCIndeterminatePixmap       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
  102.           XmNindicatorOn               XmCIndicatorOn               unsigned char    XmINDICATOR_FILL       CSG
  103.           XmNindicatorSize             XmCIndicatorSize             Dimension        dynamic                CSG
  104.           XmNindicatorType             XmCIndicatorType             unsigned char    dynamic                CSG
  105.           XmNselectColor               XmCSelectColor               Pixel            dynamic                CSG
  106.           XmNselectInsensitivePixmap   XmCSelectInsensitivePixmap   Pixmap           XmUNSPECIFIED_PIXMAP   CSG
  107.           XmNselectPixmap              XmCSelectPixmap              Pixmap           XmUNSPECIFIED_PIXMAP   CSG
  108.           XmNset                       XmCSet                       unsigned char    XmUNSET                CSG
  109.           XmNspacing                   XmCSpacing                   Dimension        4                      CSG
  110.           XmNtoggleMode                XmCToggleMode                unsigned char    XmTOGGLE_BOOLEAN       CSG
  111.           XmNunselectColor             XmCUnselectColor             Pixel            dynamic                CSG
  112.           XmNvalueChangedCallback      XmCValueChangedCallback      XtCallbackList   NULL                   C
  113.           XmNvisibleWhenOff            XmCVisibleWhenOff            Boolean          dynamic                CSG
  114.  
  115.           XXXXmmmmNNNNaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk
  116.                     Specifies a list of callbacks that is called when
  117.                     the ToggleButtonGadget is armed.  To arm this
  118.                     gadget, press the active mouse button while the
  119.                     pointer is inside the ToggleButtonGadget.  For
  120.                     this callback, the reason is XXXXmmmmCCCCRRRR____AAAARRRRMMMM.
  121.  
  122.           XXXXmmmmNNNNddddeeeettttaaaaiiiillllSSSShhhhaaaaddddoooowwwwTTTThhhhiiiicccckkkknnnneeeessssssss
  123.                     Specifies the thickness of the indicator shadow.
  124.                     The default thickness is 2 pixels.
  125.  
  126.  
  127.  
  128.  
  129.      Page 2                                          (printed 10/3/02)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  137.  
  138.  
  139.  
  140.           XXXXmmmmNNNNddddiiiissssaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk
  141.                     Specifies a list of callbacks called when
  142.                     ToggleButtonGadget is disarmed.  To disarm this
  143.                     gadget, press and release the active mouse button
  144.                     while the pointer is inside the
  145.                     ToggleButtonGadget.  The gadget is also disarmed
  146.                     when the user moves out of the gadget and releases
  147.                     the mouse button when the pointer is outside the
  148.                     gadget.  For this callback, the reason is
  149.                     XXXXmmmmCCCCRRRR____DDDDIIIISSSSAAAARRRRMMMM.
  150.  
  151.           XXXXmmmmNNNNffffiiiillllllllOOOOnnnnSSSSeeeelllleeeecccctttt
  152.                     Fills the indicator with the color specified in
  153.                     XXXXmmmmNNNNsssseeeelllleeeeccccttttCCCCoooolllloooorrrr and switches the top and bottom
  154.                     shadow colors when set to True. If unset, fills
  155.                     the indicator with the unselect color. If
  156.                     indeterminate, fills the indicator with half
  157.                     select color and half unselect color.  Otherwise,
  158.                     it switches only the top and bottom shadow colors.
  159.                     The default is set True only if a box type of
  160.                     indicator (such as a check box) is specified, or
  161.                     if the XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrTTTTyyyyppppeeee is a 1111----ooooffff type and a
  162.                     toggle indicator is drawn.  If XXXXmmmmNNNNffffiiiillllllllOOOOnnnnSSSSeeeelllleeeecccctttt is
  163.                     True, XXXXmmmmNNNNsssseeeetttt is XXXXmmmmSSSSEEEETTTT, and XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is
  164.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____NNNNOOOONNNNEEEE the ToggleButtonGadget's
  165.                     background is set to XXXXmmmmNNNNsssseeeelllleeeeccccttttCCCCoooolllloooorrrr. For the other
  166.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn values, only the indicator is
  167.                     filled with XXXXmmmmNNNNsssseeeelllleeeeccccttttCCCCoooolllloooorrrr.
  168.  
  169.           XXXXmmmmNNNNiiiinnnnddddeeeetttteeeerrrrmmmmiiiinnnnaaaatttteeeeIIIInnnnsssseeeennnnssssiiiittttiiiivvvveeeePPPPiiiixxxxmmmmaaaapppp
  170.                     Specifies the pixmap to be displayed as the button
  171.                     face when the Label _X_m_N_l_a_b_l_e_T_y_p_e resource is
  172.                     XXXXmmmmPPPPIIIIXXXXMMMMAAAAPPPP, the ToggleButtonGadget XXXXmmmmNNNNsssseeeetttt resource
  173.                     is XXXXmmmmIIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE, and the CCCCoooorrrreeee XXXXmmmmNNNNsssseeeennnnssssiiiittttiiiivvvveeee
  174.                     resource is False.
  175.  
  176.           XXXXmmmmNNNNiiiinnnnddddeeeetttteeeerrrrmmmmiiiinnnnaaaatttteeeePPPPiiiixxxxmmmmaaaapppp
  177.                     Specifies the pixmap to be displayed as the button
  178.                     face when the Label _X_m_N_l_a_b_l_e_T_y_p_e resource is
  179.                     XXXXmmmmPPPPIIIIXXXXMMMMAAAAPPPP, the ToggleButtonGadget XXXXmmmmNNNNsssseeeetttt resource
  180.                     is XXXXmmmmIIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE, and the CCCCoooorrrreeee XXXXmmmmNNNNsssseeeennnnssssiiiittttiiiivvvveeee
  181.                     resource is True.
  182.  
  183.           XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn
  184.                     Specifies that if a toggle indicator is to be
  185.                     drawn, it will be drawn to one side of the toggle
  186.                     text or pixmap, depending on the
  187.                     XXXXmmmmNNNNllllaaaayyyyoooouuuuttttDDDDiiiirrrreeeeccccttttiiiioooonnnn resource of the widget. The
  188.                     default value is XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____FFFFIIIILLLLLLLL.  Toggles accept
  189.                     the following values:
  190.  
  191.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____NNNNOOOONNNNEEEE
  192.  
  193.  
  194.  
  195.      Page 3                                          (printed 10/3/02)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  203.  
  204.  
  205.  
  206.                               No space is allocated for the indicator,
  207.                               and it is not displayed. Any shadows
  208.                               around the entire widget are switched
  209.                               when the toggle is selected or
  210.                               unselected.
  211.  
  212.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____BBBBOOOOXXXX
  213.                               The toggle indicator is in the shape of
  214.                               a shadowed box.
  215.  
  216.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____FFFFIIIILLLLLLLL
  217.                               If the value of the XXXXmmmmDDDDiiiissssppppllllaaaayyyy
  218.                               XXXXmmmmNNNNeeeennnnaaaabbbblllleeeeTTTToooogggggggglllleeeeVVVViiiissssuuuuaaaallllresource is TTTTrrrruuuueeee,
  219.                               the visuals are those of
  220.                               _X_m_I_N_D_I_C_A_T_O_R__C_H_E_C_K__B_O_X; if FFFFaaaallllsssseeee, the
  221.                               indicator visuals are those of
  222.                               _X_m_I_N_D_I_C_A_T_O_R__B_O_X.
  223.  
  224.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____CCCCHHHHEEEECCCCKKKK
  225.                               The toggle indicator is in the shape of
  226.                               a checkmark in the foreground color.
  227.  
  228.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____CCCCHHHHEEEECCCCKKKK____BBBBOOOOXXXX
  229.                               The toggle indicator is in the shape of
  230.                               a checkmark enclosed in a box.  This is
  231.                               the default if the XXXXmmmmDDDDiiiissssppppllllaaaayyyy
  232.                               XXXXmmmmNNNNeeeennnnaaaabbbblllleeeeTTTToooogggggggglllleeeeVVVViiiissssuuuuaaaallllresource is set.
  233.  
  234.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____CCCCRRRROOOOSSSSSSSS____BBBBOOOOXXXX
  235.                               The toggle indicator is in the shape of
  236.                               a cross enclosed in a box.
  237.  
  238.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____CCCCRRRROOOOSSSSSSSS
  239.                               The toggle indicator is in the shape of
  240.                               a cross.
  241.  
  242.                     All ToggleButton checks and crosses should be
  243.                     drawn in the foreground color.
  244.  
  245.                     If this resource is not XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____NNNNOOOONNNNEEEE, it will
  246.                     control the appearance of the toggle visual. If
  247.                     XXXXmmmmNNNNsssseeeetttt is XXXXmmmmIIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE and XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is
  248.                     not XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____NNNNOOOONNNNEEEE, this resource shows a
  249.                     stippled flat box.  If XXXXmmmmNNNNsssseeeetttt is XXXXmmmmIIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE,
  250.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____NNNNOOOONNNNEEEE, and
  251.                     XXXXmmmmNNNNttttoooogggggggglllleeeeMMMMooooddddeeee is XXXXmmmmTTTTOOOOGGGGGGGGLLLLEEEE____IIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE, the label
  252.                     and the ToggleButton are stippled with a
  253.                     combination of the XXXXmmmmNNNNsssseeeelllleeeeccccttttCCCCoooolllloooorrrr and the
  254.                     XXXXmmmmNNNNuuuunnnnsssseeeelllleeeeccccttttCCCCoooolllloooorrrr color, and the border is flat.
  255.  
  256.           XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrSSSSiiiizzzzeeee
  257.                     Sets the size of the indicator.  If no value is
  258.  
  259.  
  260.  
  261.      Page 4                                          (printed 10/3/02)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  269.  
  270.  
  271.  
  272.                     specified, the size of the indicator is based on
  273.                     the size of the label string or pixmap.  If the
  274.                     label string or pixmap changes, the size of the
  275.                     indicator is recomputed based on the size of the
  276.                     label string or pixmap.  Once a value has been
  277.                     specified for XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrSSSSiiiizzzzeeee, the indicator has
  278.                     that size, regardless of the size of the label
  279.                     string or pixmap, until a new value is specified.
  280.                     The size of indicators inside menus may differ
  281.                     from those outside of menus.  Note that a change
  282.                     in this resource may also cause a change in the
  283.                     values of the inherited resources XXXXmmmmNNNNmmmmaaaarrrrggggiiiinnnnTTTToooopppp,
  284.                     XXXXmmmmNNNNmmmmaaaarrrrggggiiiinnnnBBBBoooottttttttoooommmm, and XXXXmmmmNNNNmmmmaaaarrrrggggiiiinnnnLLLLeeeefffftttt.
  285.  
  286.           XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrTTTTyyyyppppeeee
  287.                     Specifies if the indicator is a 1111----ooooffff or NNNN----ooooffff
  288.                     indicator. For the 1111----ooooffff indicator, the value can
  289.                     be XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY, XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY____RRRROOOOUUUUNNNNDDDD, or
  290.                     XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY____DDDDIIIIAAAAMMMMOOOONNNNDDDD.  For the NNNN----ooooffff indicator,
  291.                     the value is XXXXmmmmNNNN____OOOOFFFF____MMMMAAAANNNNYYYY.  This value specifies
  292.                     only the visuals and does not enforce the
  293.                     behavior. When the ToggleButton is in a radio box,
  294.                     the default is XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY; otherwise, the
  295.                     default is XXXXmmmmNNNN____OOOOFFFF____MMMMAAAANNNNYYYY. Legal values are:
  296.  
  297.                     XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY
  298.                               When the Display
  299.                               XXXXmmmmNNNNeeeennnnaaaabbbblllleeeeTTTToooogggggggglllleeeeVVVViiiissssuuuuaaaallllresource is set,
  300.                               indicators are drawn with the same
  301.                               appearance as XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY____RRRROOOOUUUUNNNNDDDD;
  302.                               otherwise, they appear the same as
  303.                               XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY____DDDDIIIIAAAAMMMMOOOONNNNDDDD.
  304.  
  305.                     XXXXmmmmNNNN____OOOOFFFF____MMMMAAAANNNNYYYY
  306.                               The indicators are drawn as specified by
  307.                               the XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnnresource.
  308.  
  309.                     XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY____RRRROOOOUUUUNNNNDDDD
  310.                               A shadowed circle.
  311.  
  312.                     XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY____DDDDIIIIAAAAMMMMOOOONNNNDDDD
  313.                               A shadowed diamond.
  314.  
  315.           XXXXmmmmNNNNsssseeeelllleeeeccccttttCCCCoooolllloooorrrr
  316.                     Allows the application to specify what color fills
  317.                     the center of the square, diamond-shaped, or round
  318.                     indicator when it is set.  If this color is the
  319.                     same as either the top or the bottom shadow color
  320.                     of the indicator, a one-pixel-wide margin is left
  321.                     between the shadows and the fill; otherwise, it is
  322.                     filled completely.  The results of this resource
  323.                     depend on the value of the Display resource
  324.  
  325.  
  326.  
  327.      Page 5                                          (printed 10/3/02)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  335.  
  336.  
  337.  
  338.                     XXXXmmmmNNNNeeeennnnaaaabbbblllleeeeTTTToooogggggggglllleeeeCCCCoooolllloooorrrr. A value of True causes the
  339.                     fill color to use the XXXXmmmmHHHHIIIIGGGGHHHHLLLLIIIIGGGGHHHHTTTT____CCCCOOOOLLLLOOOORRRR color by
  340.                     default. A value of False causes the fill color to
  341.                     use the background color.  This resource's default
  342.                     for a color display is a color between the
  343.                     background and the bottom shadow color. For a
  344.                     monochrome display, the default is set to the
  345.                     foreground color. To set the background of the
  346.                     button to XXXXmmmmNNNNsssseeeelllleeeeccccttttCCCCoooolllloooorrrr when XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is
  347.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____NNNNOOOONNNNEEEE, the value of XXXXmmmmNNNNffffiiiillllllllOOOOnnnnSSSSeeeelllleeeecccctttt
  348.                     must be explicitly set to True.
  349.  
  350.                     This resource can take the following values:
  351.  
  352.                     XXXXmmmmDDDDEEEEFFFFAAAAUUUULLLLTTTT____SSSSEEEELLLLEEEECCCCTTTT____CCCCOOOOLLLLOOOORRRR
  353.                               Is the same as the current dynamic
  354.                               default, which is a color between the
  355.                               background and the bottom shadow color.
  356.  
  357.                     XXXXmmmmRRRREEEEVVVVEEEERRRRSSSSEEEEDDDD____GGGGRRRROOOOUUUUNNNNDDDD____CCCCOOOOLLLLOOOORRRRSSSS
  358.                               Forces the select color to the
  359.                               foreground color and causes the default
  360.                               color of any text rendered over the
  361.                               select color to be in the background
  362.                               color.
  363.  
  364.                     XXXXmmmmHHHHIIIIGGGGHHHHLLLLIIIIGGGGHHHHTTTT____CCCCOOOOLLLLOOOORRRR
  365.                               Forces the fill color to use the
  366.                               highlight color.
  367.  
  368.           XXXXmmmmNNNNsssseeeelllleeeeccccttttIIIInnnnsssseeeennnnssssiiiittttiiiivvvveeeePPPPiiiixxxxmmmmaaaapppp
  369.                     Specifies a pixmap used as the button face when
  370.                     the ToggleButtonGadget is selected, the button is
  371.                     insensitive, and the LabelGadget resource
  372.                     XXXXmmmmNNNNllllaaaabbbbeeeellllTTTTyyyyppppeeeeis XXXXmmmmPPPPIIIIXXXXMMMMAAAAPPPP. If the ToggleButtonGadget
  373.                     is unselected and the button is insensitive, the
  374.                     pixmap in XXXXmmmmNNNNllllaaaabbbbeeeellllIIIInnnnsssseeeennnnssssiiiittttiiiivvvveeeePPPPiiiixxxxmmmmaaaapppp is used as the
  375.                     button face.  If no value is specified for
  376.                     XXXXmmmmNNNNllllaaaabbbbeeeellllIIIInnnnsssseeeennnnssssiiiittttiiiivvvveeeePPPPiiiixxxxmmmmaaaapppp, that resource is set to
  377.                     the value specified for
  378.                     XXXXmmmmNNNNsssseeeelllleeeeccccttttIIIInnnnsssseeeennnnssssiiiittttiiiivvvveeeePPPPiiiixxxxmmmmaaaapppp.
  379.  
  380.           XXXXmmmmNNNNsssseeeelllleeeeccccttttPPPPiiiixxxxmmmmaaaapppp
  381.                     Specifies the pixmap to be used as the button face
  382.                     if XXXXmmmmNNNNllllaaaabbbbeeeellllTTTTyyyyppppeeee is XXXXmmmmPPPPIIIIXXXXMMMMAAAAPPPP and the
  383.                     ToggleButtonGadget is selected.  When the
  384.                     ToggleButtonGadget is unselected, the pixmap
  385.                     specified in LabelGadget's XXXXmmmmNNNNllllaaaabbbbeeeellllPPPPiiiixxxxmmmmaaaapppp is used.
  386.                     If no value is specified for XXXXmmmmNNNNllllaaaabbbbeeeellllPPPPiiiixxxxmmmmaaaapppp, that
  387.                     resource is set to the value specified for
  388.                     XXXXmmmmNNNNsssseeeelllleeeeccccttttPPPPiiiixxxxmmmmaaaapppp.
  389.  
  390.  
  391.  
  392.  
  393.      Page 6                                          (printed 10/3/02)
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  401.  
  402.  
  403.  
  404.           XXXXmmmmNNNNsssseeeetttt    Represents the state of the ToggleButton. A value
  405.                     of XXXXmmmmUUUUNNNNSSSSEEEETTTT indicates that the ToggleButton is not
  406.                     set. A value of XXXXmmmmSSSSEEEETTTT indicates that the
  407.                     ToggleButton is set. A value of XXXXmmmmIIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE
  408.                     indicates that the ToggleButton is in an
  409.                     indeterminate state (neither set nor unset).  The
  410.                     ToggleButton states cycle through in the order of
  411.                     XXXXmmmmSSSSEEEETTTT, XXXXmmmmIIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE (if XXXXmmmmNNNNttttoooogggggggglllleeeeMMMMooooddddeeee is set to
  412.                     XXXXmmmmTTTTOOOOGGGGGGGGLLLLEEEE____IIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE), and XXXXmmmmUUUUNNNNSSSSEEEETTTT, and then
  413.                     back around to XXXXmmmmSSSSEEEETTTT. If XXXXmmmmNNNNttttoooogggggggglllleeeeMMMMooooddddeeee is set to
  414.                     XXXXmmmmTTTTOOOOGGGGGGGGLLLLEEEE____BBBBOOOOOOOOLLLLEEEEAAAANNNN, then the ToggleButton states
  415.                     cycle through in the order of XXXXmmmmSSSSEEEETTTT, then XXXXmmmmUUUUNNNNSSSSEEEETTTT,
  416.                     and then back around to XXXXmmmmSSSSEEEETTTT.  Setting this
  417.                     resource sets the state of the ToggleButton.
  418.  
  419.           XXXXmmmmNNNNssssppppaaaacccciiiinnnngggg
  420.                     Specifies the amount of spacing between the toggle
  421.                     indicator and the toggle label (text or pixmap).
  422.  
  423.           XXXXmmmmNNNNttttoooogggggggglllleeeeMMMMooooddddeeee
  424.                     Specifies the mode of the ToggleButtonGadget as
  425.                     either XXXXmmmmTTTTOOOOGGGGGGGGLLLLEEEE____BBBBOOOOOOOOLLLLEEEEAAAANNNN or XXXXmmmmTTTTOOOOGGGGGGGGLLLLEEEE____IIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE.
  426.                     The XXXXmmmmTTTTOOOOGGGGGGGGLLLLEEEE____IIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE value allows the XXXXmmmmNNNNsssseeeetttt
  427.                     resource to be able to accept the values
  428.                     XXXXmmmmIIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE, XXXXmmmmSSSSEEEETTTT, and XXXXmmmmUUUUNNNNSSSSEEEETTTT. The
  429.                     XXXXmmmmNNNNttttoooogggggggglllleeeeMMMMooooddddeeee resource is forced to
  430.                     XXXXmmmmTTTTOOOOGGGGGGGGLLLLEEEE____BBBBOOOOOOOOLLLLEEEEAAAANNNN if the toggle is in an
  431.                     XXXXmmmmRRRRoooowwwwCCCCoooolllluuuummmmnnnn widget whose radio behavior is
  432.                     XXXXmmmmOOOONNNNEEEE____OOOOFFFF____MMMMAAAANNNNYYYY. In XXXXmmmmTTTTOOOOGGGGGGGGLLLLEEEE____BBBBOOOOOOOOLLLLEEEEAAAANNNN mode, the
  433.                     XXXXmmmmNNNNsssseeeetttt resource can only accept XXXXmmmmSSSSEEEETTTT and XXXXmmmmUUUUNNNNSSSSEEEETTTT.
  434.  
  435.           XXXXmmmmNNNNuuuunnnnsssseeeelllleeeeccccttttCCCCoooolllloooorrrr
  436.                     Allows the application to specify what color fills
  437.                     the center of the square, diamond-shaped, or round
  438.                     indicator when it is not set.  If this color is
  439.                     the same as either the top or the bottom shadow
  440.                     color of the indicator, a one-pixel-wide margin is
  441.                     left between the shadows and the fill; otherwise,
  442.                     it is filled completely.  This resource's default
  443.                     for a color display is XXXXmmmmNNNNbbbbaaaacccckkkkggggrrrroooouuuunnnndddd.  For a
  444.                     monochrome display, the default is set to the
  445.                     background color. To set the background of the
  446.                     button to XXXXmmmmNNNNuuuunnnnsssseeeelllleeeeccccttttCCCCoooolllloooorrrr when XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is
  447.                     XXXXmmmmIIIINNNNDDDDIIIICCCCAAAATTTTOOOORRRR____NNNNOOOONNNNEEEE, the value of XXXXmmmmNNNNffffiiiillllllllOOOOnnnnSSSSeeeelllleeeecccctttt
  448.                     must be explicitly set to True. This resource acts
  449.                     like the XXXXmmmmNNNNsssseeeelllleeeeccccttttCCCCoooolllloooorrrr resource, but for the case
  450.                     when XXXXmmmmNNNNsssseeeetttt is XXXXmmmmUUUUNNNNSSSSEEEETTTT.
  451.  
  452.           XXXXmmmmNNNNvvvvaaaalllluuuueeeeCCCChhhhaaaannnnggggeeeeddddCCCCaaaallllllllbbbbaaaacccckkkk
  453.                     Specifies a list of callbacks called when the
  454.                     ToggleButtonGadget value is changed. To change the
  455.                     value, press and release the active mouse button
  456.  
  457.  
  458.  
  459.      Page 7                                          (printed 10/3/02)
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  467.  
  468.  
  469.  
  470.                     while the pointer is inside the
  471.                     ToggleButtonGadget. This action also causes the
  472.                     gadget to be disarmed.  For this callback, the
  473.                     reason is XXXXmmmmCCCCRRRR____VVVVAAAALLLLUUUUEEEE____CCCCHHHHAAAANNNNGGGGEEEEDDDD.
  474.  
  475.           XXXXmmmmNNNNvvvviiiissssiiiibbbblllleeeeWWWWhhhheeeennnnOOOOffffffff
  476.                     Indicates that the toggle indicator is visible in
  477.                     the unselected state when the Boolean value is
  478.                     True.  When the ToggleButtonGadget is in a menu,
  479.                     the default value is False.  When the
  480.                     ToggleButtonGadget is in a RadioBox, the default
  481.                     value is True.
  482.  
  483.         IIIInnnnhhhheeeerrrriiiitttteeeedddd RRRReeeessssoooouuuurrrrcccceeeessss
  484.           ToggleButtonGadget inherits behavior and resources from the
  485.           superclasses described in the following tables.  For a
  486.           complete description of each resource, refer to the
  487.           reference page for that superclass.
  488.  
  489.                                                  XXXXmmmmLLLLaaaabbbbeeeellllGGGGaaaaddddggggeeeetttt RRRReeeessssoooouuuurrrrcccceeee SSSSeeeetttt
  490.           NNNNaaaammmmeeee                        CCCCllllaaaassssssss                       TTTTyyyyppppeeee                DDDDeeeeffffaaaauuuulllltttt                AAAAcccccccceeeessssssss
  491.           XmNaccelerator              XmCAccelerator              String              NULL                   CSG
  492.           XmNacceleratorText          XmCAcceleratorText          XmString            NULL                   CSG
  493.           XmNalignment                XmCAlignment                unsigned char       dynamic                CSG
  494.           XmNfontList                 XmCFontList                 XmFontList          dynamic                CSG
  495.           XmNlabelInsensitivePixmap   XmCLabelInsensitivePixmap   Pixmap              XmUNSPECIFIED_PIXMAP   CSG
  496.           XmNlabelPixmap              XmCLabelPixmap              Pixmap              XmUNSPECIFIED_PIXMAP   CSG
  497.           XmNlabelString              XmCXmString                 XmString            dynamic                CSG
  498.           XmNlabelType                XmCLabelType                unsigned char       XmSTRING               CSG
  499.           XmNmarginBottom             XmCMarginBottom             Dimension           dynamic                CSG
  500.           XmNmarginHeight             XmCMarginHeight             Dimension           2                      CSG
  501.           XmNmarginLeft               XmCMarginLeft               Dimension           dynamic                CSG
  502.           XmNmarginRight              XmCMarginRight              Dimension           0                      CSG
  503.           XmNmarginTop                XmCMarginTop                Dimension           dynamic                CSG
  504.           XmNmarginWidth              XmCMarginWidth              Dimension           2                      CSG
  505.           XmNmnemonic                 XmCMnemonic                 KeySym              NULL                   CSG
  506.           XmNmnemonicCharSet          XmCMnemonicCharSet          String              dynamic                CSG
  507.           XmNrecomputeSize            XmCRecomputeSize            Boolean             True                   CSG
  508.           XmNrenderTable              XmCRenderTable              XmRenderTable       dynamic                CSG
  509.           XmNstringDirection          XmCStringDirection          XmStringDirection   dynamic                CSG
  510.  
  511.                                                XXXXmmmmGGGGaaaaddddggggeeeetttt RRRReeeessssoooouuuurrrrcccceeee SSSSeeeetttt
  512.           NNNNaaaammmmeeee                    CCCCllllaaaassssssss                   TTTTyyyyppppeeee               DDDDeeeeffffaaaauuuulllltttt                AAAAcccccccceeeessssssss
  513.           XmNbackground           XmCBackground           Pixel              dynamic                CSG
  514.           XmNbackgroundPixmap     XmCPixmap               Pixmap             XmUNSPECIFIED_PIXMAP   CSG
  515.           XmNbottomShadowColor    XmCBottomShadowColor    Pixel              dynamic                CSG
  516.           XmNbottomShadowPixmap   XmCBottomShadowPixmap   Pixmap             dynamic                CSG
  517.           XmNhelpCallback         XmCCallback             XtCallbackList     NULL                   C
  518.           XmNforeground           XmCForeground           Pixel              dynamic                CSG
  519.           XmNhighlightColor       XmCHighlightColor       Pixel              dynamic                CSG
  520.  
  521.  
  522.  
  523.  
  524.  
  525.      Page 8                                          (printed 10/3/02)
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  533.  
  534.  
  535.  
  536.           XmNhighlightOnEnter     XmCHighlightOnEnter     Boolean            False                  CSG
  537.           XmNhighlightPixmap      XmCHighlightPixmap      Pixmap             dynamic                CSG
  538.           XmNhighlightThickness   XmCHighlightThickness   Dimension          2                      CSG
  539.           XmNlayoutDirection      XmNCLayoutDirection     XmDirection        dynamic                CG
  540.           XmNnavigationType       XmCNavigationType       XmNavigationType   XmNONE                 CSG
  541.           XmNshadowThickness      XmCShadowThickness      Dimension          dynamic                CSG
  542.           XmNtopShadowColor       XmCTopShadowColor       Pixel              dynamic                CSG
  543.           XmNtopShadowPixmap      XmCTopShadowPixmap      Pixmap             dynamic                CSG
  544.           XmNtraversalOn          XmCTraversalOn          Boolean            True                   CSG
  545.           XmNunitType             XmCUnitType             unsigned char      dynamic                CSG
  546.           XmNuserData             XmCUserData             XtPointer          NULL                   CSG
  547.  
  548.                                   RRRReeeeccccttttOOOObbbbjjjj RRRReeeessssoooouuuurrrrcccceeee SSSSeeeetttt
  549.           NNNNaaaammmmeeee                   CCCCllllaaaassssssss            TTTTyyyyppppeeee        DDDDeeeeffffaaaauuuulllltttt   AAAAcccccccceeeessssssss
  550.           XmNancestorSensitive   XmCSensitive     Boolean     dynamic   G
  551.           XmNborderWidth         XmCBorderWidth   Dimension   0         N/A
  552.           XmNheight              XmCHeight        Dimension   dynamic   CSG
  553.           XmNsensitive           XmCSensitive     Boolean     True      CSG
  554.           XmNwidth               XmCWidth         Dimension   dynamic   CSG
  555.           XmNx                   XmCPosition      Position    0         CSG
  556.           XmNy                   XmCPosition      Position    0         CSG
  557.  
  558.                                   OOOObbbbjjjjeeeecccctttt RRRReeeessssoooouuuurrrrcccceeee SSSSeeeetttt
  559.           NNNNaaaammmmeeee                 CCCCllllaaaassssssss         TTTTyyyyppppeeee             DDDDeeeeffffaaaauuuulllltttt   AAAAcccccccceeeessssssss
  560.           XmNdestroyCallback   XmCCallback   XtCallbackList   NULL      C
  561.  
  562.         CCCCaaaallllllllbbbbaaaacccckkkk IIIInnnnffffoooorrrrmmmmaaaattttiiiioooonnnn
  563.           A pointer to the following structure is passed to each
  564.           callback:
  565.  
  566.           typedef struct
  567.           {
  568.                   int _r_e_a_s_o_n;
  569.                   XEvent * _e_v_e_n_t;
  570.                   int _s_e_t;
  571.           } XmToggleButtonCallbackStruct;
  572.  
  573.           _r_e_a_s_o_n    Indicates why the callback was invoked
  574.  
  575.           _e_v_e_n_t     Points to the _X_E_v_e_n_t that triggered the callback
  576.  
  577.           _s_e_t       Reflects the ToggleButtonGadget's state, either
  578.                     XXXXmmmmSSSSEEEETTTT (selected), XXXXmmmmUUUUNNNNSSSSEEEETTTT (unselected), or
  579.                     XXXXmmmmIIIINNNNDDDDEEEETTTTEEEERRRRMMMMIIIINNNNAAAATTTTEEEE (neither).  Note that the reported
  580.                     state is the state that the ToggleButtonGadget is
  581.                     in after the _e_v_e_n_t has been processed. For
  582.                     example, suppose that a user clicks on a
  583.                     ToggleButtonGadget to change it from the
  584.                     unselected state to the selected state. In this
  585.                     case, ToggleButtonGadget changes the value of _s_e_t
  586.                     from XXXXmmmmUUUUNNNNSSSSEEEETTTTto XXXXmmmmSSSSEEEETTTT prior to calling the
  587.                     callback.
  588.  
  589.  
  590.  
  591.      Page 9                                          (printed 10/3/02)
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  599.  
  600.  
  601.  
  602.         BBBBeeeehhhhaaaavvvviiiioooorrrr
  603.           XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt includes behavior from XXXXmmmmGGGGaaaaddddggggeeeetttt.
  604.           XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt includes menu traversal behavior from
  605.           XXXXmmmmLLLLaaaabbbbeeeellllGGGGaaaaddddggggeeeetttt.  Additional XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt behavior is
  606.           described in the following list:
  607.  
  608.           <<<<BBBBttttnnnn2222DDDDoooowwwwnnnn>>>>:
  609.                     Drags the contents of a ToggleButtonGadget label,
  610.                     identified when <<<<BBBBttttnnnn2222>>>> is pressed.  This action is
  611.                     undefined for ToggleButtonGadgets used in a menu
  612.                     system.
  613.  
  614.           <<<<BBBBttttnnnn1111DDDDoooowwwwnnnn>>>>:
  615.                     In a menu, this action unposts any menus posted by
  616.                     the ToggleButtonGadget's parent menu, disables
  617.                     keyboard traversal for the menu, and enables mouse
  618.                     traversal for the menu.  It draws the shadow in
  619.                     the armed state and, unless the button is already
  620.                     armed, calls the XXXXmmmmNNNNaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkkcallbacks.
  621.  
  622.                     Outside a menu, if the button was previously
  623.                     unset, this action does the following:  if
  624.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is True, it draws the indicator
  625.                     shadow so that the indicator looks pressed; if
  626.                     XXXXmmmmNNNNffffiiiillllllllOOOOnnnnSSSSeeeelllleeeecccctttt is True, it fills the indicator
  627.                     with the color specified by XXXXmmmmNNNNsssseeeelllleeeeccccttttCCCCoooolllloooorrrr.  If
  628.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is False, it draws the button
  629.                     shadow so that the button looks pressed.  If
  630.                     XXXXmmmmNNNNllllaaaabbbbeeeellllTTTTyyyyppppeeee is XXXXmmmmPPPPIIIIXXXXMMMMAAAAPPPP, the XXXXmmmmNNNNsssseeeelllleeeeccccttttPPPPiiiixxxxmmmmaaaapppp is
  631.                     used as the button face.  This resource calls the
  632.                     XXXXmmmmNNNNaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk callbacks.
  633.  
  634.                     Outside a menu, if the button was previously set,
  635.                     this action does the following:  if both
  636.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn and XXXXmmmmNNNNvvvviiiissssiiiibbbblllleeeeWWWWhhhheeeennnnOOOOffffffff are True, it
  637.                     draws the indicator shadow so that the indicator
  638.                     looks raised; if XXXXmmmmNNNNffffiiiillllllllOOOOnnnnSSSSeeeelllleeeecccctttt is True, it fills
  639.                     the indicator with the background color.  If
  640.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is False, it draws the button
  641.                     shadow so that the button looks raised.  If
  642.                     XXXXmmmmNNNNllllaaaabbbbeeeellllTTTTyyyyppppeeee is XXXXmmmmPPPPIIIIXXXXMMMMAAAAPPPP, the XXXXmmmmNNNNllllaaaabbbbeeeellllPPPPiiiixxxxmmmmaaaapppp is
  643.                     used as the button face.  This resource calls the
  644.                     XXXXmmmmNNNNaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk callbacks.
  645.  
  646.           <<<<BBBBttttnnnn1111UUUUpppp>>>>: In a menu, this action unposts all menus in the
  647.                     menu hierarchy.  If the ToggleButtonGadget was
  648.                     previously set, this action unsets it; if the
  649.                     ToggleButtonGadget was previously unset, this
  650.                     action sets it.  It calls the
  651.                     XXXXmmmmNNNNvvvvaaaalllluuuueeeeCCCChhhhaaaannnnggggeeeeddddCCCCaaaallllllllbbbbaaaacccckkkk callbacks and then the
  652.                     XXXXmmmmNNNNddddiiiissssaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk callbacks.
  653.  
  654.  
  655.  
  656.  
  657.      Page 10                                         (printed 10/3/02)
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  665.  
  666.  
  667.  
  668.                     If the button is outside a menu and the pointer is
  669.                     within the button, this action does the following:
  670.                     if the button was previously unset, sets it; if
  671.                     the button was previously set, unsets it.  This
  672.                     action calls the XXXXmmmmNNNNvvvvaaaalllluuuueeeeCCCChhhhaaaannnnggggeeeeddddCCCCaaaallllllllbbbbaaaacccckkkk
  673.                     callbacks.
  674.  
  675.                     If the button is outside a menu, this action calls
  676.                     the XXXXmmmmNNNNddddiiiissssaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkkcallbacks.
  677.  
  678.           <<<<KKKKeeeeyyyy>>>><<<<oooossssffffHHHHeeeellllpppp>>>>:
  679.                     In a Pulldown or Popup MenuPane, unposts all menus
  680.                     in the menu hierarchy and, when the shell's
  681.                     keyboard focus policy is XXXXmmmmEEEEXXXXPPPPLLLLIIIICCCCIIIITTTT, restores
  682.                     keyboard focus to the widget that had the focus
  683.                     before the menu system was entered.  Calls the
  684.                     callbacks for XXXXmmmmNNNNhhhheeeellllppppCCCCaaaallllllllbbbbaaaacccckkkk if any exist.  If
  685.                     there are no help callbacks for this widget, this
  686.                     action calls the help callbacks for the nearest
  687.                     ancestor that has them.
  688.  
  689.           <<<<KKKKeeeeyyyy>>>><<<<oooossssffffAAAAccccttttiiiivvvvaaaatttteeee>>>>:
  690.                     In a menu, this action unposts all menus in the
  691.                     menu hierarchy.  Unless the button is already
  692.                     armed, this action calls the
  693.                     XXXXmmmmNNNNaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkkcallbacks; and calls the
  694.                     XXXXmmmmNNNNvvvvaaaalllluuuueeeeCCCChhhhaaaannnnggggeeeeddddCCCCaaaallllllllbbbbaaaacccckkkk and XXXXmmmmNNNNddddiiiissssaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk
  695.                     callbacks. Outside a menu, if the parent is a
  696.                     manager, this action passes the event to the
  697.                     parent.
  698.  
  699.           <<<<KKKKeeeeyyyy>>>><<<<oooossssffffSSSSeeeelllleeeecccctttt>>>>:
  700.                     If the ToggleButtonGadget was previously set, this
  701.                     action unsets it; if the ToggleButtonGadget was
  702.                     previously unset, this action sets it.
  703.  
  704.                     In a menu, this action unposts all menus in the
  705.                     menu hierarchy.  Unless the button is already
  706.                     armed, this action calls the XXXXmmmmNNNNaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk, the
  707.                     XXXXmmmmNNNNvvvvaaaalllluuuueeeeCCCChhhhaaaannnnggggeeeeddddCCCCaaaallllllllbbbbaaaacccckkkk, and XXXXmmmmNNNNddddiiiissssaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk
  708.                     callbacks.
  709.  
  710.                     Outside a menu, if the button was previously
  711.                     unset, this action does the following:  If
  712.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is True, it draws the indicator
  713.                     shadow so that the indicator looks pressed; if
  714.                     XXXXmmmmNNNNffffiiiillllllllOOOOnnnnSSSSeeeelllleeeecccctttt is True, it fills the indicator
  715.                     with the color specified by XXXXmmmmNNNNsssseeeelllleeeeccccttttCCCCoooolllloooorrrr.  If
  716.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is False, it draws the button
  717.                     shadow so that the button looks pressed.  If
  718.                     XXXXmmmmNNNNllllaaaabbbbeeeellllTTTTyyyyppppeeeeis XXXXmmmmPPPPIIIIXXXXMMMMAAAAPPPP, the XXXXmmmmNNNNsssseeeelllleeeeccccttttPPPPiiiixxxxmmmmaaaapppp is
  719.                     used as the button face.  This action calls the
  720.  
  721.  
  722.  
  723.      Page 11                                         (printed 10/3/02)
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  731.  
  732.  
  733.  
  734.                     XXXXmmmmNNNNaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk, XXXXmmmmNNNNvvvvaaaalllluuuueeeeCCCChhhhaaaannnnggggeeeeddddCCCCaaaallllllllbbbbaaaacccckkkk,
  735.                     XXXXmmmmNNNNddddiiiissssaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk callbacks.
  736.  
  737.                     Outside a menu, if the button was previously set,
  738.                     this action does the following:  If both
  739.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn and XXXXmmmmNNNNvvvviiiissssiiiibbbblllleeeeWWWWhhhheeeennnnOOOOffffffff are True, it
  740.                     draws the indicator shadow so that the indicator
  741.                     looks raised; if XXXXmmmmNNNNffffiiiillllllllOOOOnnnnSSSSeeeelllleeeecccctttt is True, it fills
  742.                     the indicator with the background color.  If
  743.                     XXXXmmmmNNNNiiiinnnnddddiiiiccccaaaattttoooorrrrOOOOnnnn is False, it draws the button
  744.                     shadow so that the button looks raised.  If
  745.                     XXXXmmmmNNNNllllaaaabbbbeeeellllTTTTyyyyppppeeee is XXXXmmmmPPPPIIIIXXXXMMMMAAAAPPPP, the XXXXmmmmNNNNllllaaaabbbbeeeellllPPPPiiiixxxxmmmmaaaapppp is
  746.                     used as the button face.  Calls the
  747.                     XXXXmmmmNNNNaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk, XXXXmmmmNNNNvvvvaaaalllluuuueeeeCCCChhhhaaaannnnggggeeeeddddCCCCaaaallllllllbbbbaaaacccckkkk, and
  748.                     XXXXmmmmNNNNddddiiiissssaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk callbacks.
  749.  
  750.           <<<<KKKKeeeeyyyy>>>><<<<oooossssffffCCCCaaaannnncccceeeellll>>>>:
  751.                     In a toplevel Pulldown MenuPane from a MenuBar,
  752.                     unposts the menu, disarms the MenuBar
  753.                     CascadeButton and the MenuBar, and, when the
  754.                     shell's keyboard focus policy is XXXXmmmmEEEEXXXXPPPPLLLLIIIICCCCIIIITTTT,
  755.                     restores keyboard focus to the widget that had the
  756.                     focus before the MenuBar was entered.  In other
  757.                     Pulldown MenuPanes, this action unposts the menu.
  758.                     Outside a menu, if the parent is a manager, this
  759.                     action passes the event to the parent.
  760.  
  761.                     In a Popup MenuPane, this action unposts the menu
  762.                     and restores keyboard focus to the widget from
  763.                     which the menu was posted.
  764.  
  765.           <<<<EEEEnnnntttteeeerrrr>>>>:  In a menu, if keyboard traversal is enabled, this
  766.                     action does nothing.  Otherwise, it draws the
  767.                     shadow in the armed state and calls the
  768.                     XXXXmmmmNNNNaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk callbacks.
  769.  
  770.                     If the ToggleButtonGadget is not in a menu and the
  771.                     cursor leaves and then reenters the
  772.                     ToggleButtonGadget while the button is pressed,
  773.                     this action restores the button's armed
  774.                     appearance.
  775.  
  776.           <<<<LLLLeeeeaaaavvvveeee>>>>:  In a menu, if keyboard traversal is enabled, this
  777.                     action does nothing.  Otherwise, it draws the
  778.                     shadow in the unarmed state and calls the
  779.                     XXXXmmmmNNNNddddiiiissssaaaarrrrmmmmCCCCaaaallllllllbbbbaaaacccckkkk callbacks.
  780.  
  781.                     If the ToggleButtonGadget is not in a menu and the
  782.                     cursor leaves the ToggleButtonGadget while the
  783.                     button is pressed, this action restores the
  784.                     button's unarmed appearance.
  785.  
  786.  
  787.  
  788.  
  789.      Page 12                                         (printed 10/3/02)
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.      XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))  UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV  XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt((((3333XXXX))))
  797.  
  798.  
  799.  
  800.         VVVViiiirrrrttttuuuuaaaallll BBBBiiiinnnnddddiiiinnnnggggssss
  801.           The bindings for virtual keys are vendor specific.  For
  802.           information about bindings for virtual buttons and keys, see
  803.           VVVViiiirrrrttttuuuuaaaallllBBBBiiiinnnnddddiiiinnnnggggssss(3).
  804.  
  805.      RRRREEEELLLLAAAATTTTEEEEDDDD
  806.           OOOObbbbjjjjeeeecccctttt(3), RRRReeeeccccttttOOOObbbbjjjj(3), XXXXmmmmCCCCrrrreeeeaaaatttteeeeRRRRaaaaddddiiiiooooBBBBooooxxxx(3),
  807.           XXXXmmmmCCCCrrrreeeeaaaatttteeeeTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeetttt(3), XXXXmmmmGGGGaaaaddddggggeeeetttt(3),
  808.           XXXXmmmmLLLLaaaabbbbeeeellllGGGGaaaaddddggggeeeetttt(3), XXXXmmmmRRRRoooowwwwCCCCoooolllluuuummmmnnnn(3),
  809.           XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeettttGGGGeeeettttSSSSttttaaaatttteeee(3), and
  810.           XXXXmmmmTTTToooogggggggglllleeeeBBBBuuuuttttttttoooonnnnGGGGaaaaddddggggeeeettttSSSSeeeettttSSSSttttaaaatttteeee(3).
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.      Page 13                                         (printed 10/3/02)
  856.  
  857.  
  858.  
  859.